﻿using System;
using System.Collections.Generic;
using System.Text;

namespace XDL.Framework.Weapons
{
    /// <summary>
    /// Common weapon settings.
    /// </summary>
    public class WeaponSettings
    {
        /// <summary>
        /// Friendly weapon name
        /// </summary>
        public string Name;
        /// <summary>
        /// basic damage.
        /// </summary>
        public int Damage;

        /// <summary>
        /// Reload time
        /// </summary>
        public float ReloadTime;

        /// <summary>
        /// Indentifies damage type, up to each game to define the valid set of values
        /// </summary>
        public int DamageType = 0;

        /// <summary>
        /// Indicates whether the weapon can be fired continously (or not)
        /// </summary>
        public bool ContinousFire = false;

        public float RecoilForce = 0;

        /// <summary>
        /// Collision radius.
        /// </summary>
        /// <remarks>
        /// A value of zero indicates point collision logic, a value greater than zero use capsule collision.
        /// </remarks>
        public float Radius = 0;

        /// <summary>
        /// Fire animation duration (optional)
        /// </summary>
        public TimeSpan FireAnimationDuration = TimeSpan.Zero; 
    }
}
